This is a form and function call combination that displays a graphical calendar and then returns either the date or FALSE, depending on whether OK or Cancel was clicked. It handles leap years and a minimum and maximum date setting. The only control it requires other than the standard VB controls is THREED.VBX. If you replace the frame around the calendar with the non-3D frame this will work with even the standard version of Visual Basic. In addition, you need to include CONSTANT.TXT in your project as this program uses some Windows color variables. Usage is very simple - just add the FRMDATE.FRM and FRMDATE.BAS to your project and then use the following call: ret = GetDate(Now, True, "Select Date", "1/1/1980","1/1/2100") where ret is of type VARIANT GetDate returns either a date or FALSE in the form of a VARIANT depending on which button was clicked. A useful approach is to put the result of GetDate in a temporary variable and then use IsDate(temp) to check the result. For a complete description of what each variable does see the GetDate function in the FRMDATE.BAS module. There is a description at the start of the function. You are free to use/mutilate/abuse all code included here. My only request is that you let me know if you use it in your programs (this is purely curiosity, I am not running a mailing list!), find any errors, or make any changes to enhance usability. I can be reached at: 72732,407 on CompuServe or 72732.407@COMPUSERVE.COM on the internet. James Marlow Dallas, Texas January 27, 1995